/**
 * 
 */
package prv.pursuivant.core.impl;

import java.util.ArrayList;

import prv.pursuivant.core.Kind;

import com.google.inject.Inject;

/**
 * NPC achievement.
 * 
 * Cannot have criteria, must have name equals to WoW internal data. Can be
 * child of NORMAL.
 * 
 * @author Kwinto
 * 
 */
public class NpcAchievType extends AbstractAchievType {

	private final String parentId;

	/**
	 * 
	 * @param name
	 * @param id
	 */
	// * TODO: I'm not sure if mindless @Inject-ing spree makes any sense.
	// * Doesn't hurt, anyway
	@Inject
	public NpcAchievType(String name, String parentId) {
		super(name, new ArrayList<String>());
		this.parentId = parentId;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see prv.pursuivant.core.impl.AbstractAchievType#getId()
	 */
	@Override
	public String getId() {
		return parentId + "." + getName();
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see prv.pursuivant.core.achievtypes.AchievType#getKind()
	 */
	public Kind getKind() {
		return KindImpl.NPC;
	}

}
